home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / programs / mbbs12d.zip / MACRODAT.MAC < prev    next >
Text File  |  1992-06-23  |  8KB  |  285 lines

  1.  
  2.                         MACRODAT.MAC v1.2d
  3.                 by Jeff Oberlee   (C)opyright 1992
  4.  
  5. {:alr}  {MACL MACROBBS.MAC,WF3}     {:alu}  {MACL MACROBBS.MAC,bbs}
  6.  
  7. {:close}
  8.   {RCLO}
  9.   {WCLO}
  10. {:time_out}
  11.   {MACL MACROBBS.MAC,time_out}
  12.  
  13. {:cls}
  14.   {CLEA}
  15.   {COMP on,}  {IFCO CLS3}
  16.   {COMP mnu,A}  {IFCO CLS1}
  17.   {SEND ^[[2J}
  18.   {GOTO CLS2}
  19. {:CLS1} {SEND ^L}
  20. {:CLS2} {DISP 1,1,4F,│                                                                              }
  21.   {DISP 1,3,4E,%login_name #%userno}
  22.   {DISP 1,38,47,AL=%al}
  23.   {DISP 1,48,47,%mspeed}
  24.   {DISP 1,57,47,%_ela mins}
  25.   {DISP 1,70,4F,%an9%%chat}
  26.   {DISP 2,1,4F,└──────────────────────────────────────────────────────────────────────────────}
  27.   {DISP 3,1,07,}
  28. {:CLS3}  {RETURN}
  29.  
  30. {:press_any_key}
  31.   {COMP mnu,a}  {IFCO PAK1}
  32.   {SEND %an3%%an9^[[24;1h^[[24;1f[Press Any Key]%an0}
  33.   {GOTO PAK2}
  34. {:PAK1} {SEND ^J^M^J[Press Any Key]}
  35. {:PAK2} {SETG 240,time_out}
  36.   {GETS-H temp,1,PAK}
  37. {:PAK}  {SEND ^M               ^M}
  38.   {SETV temp}
  39.   {RETURN}
  40.  
  41. {:time_out}
  42.   {MACL MACROBBS.MAC,time_out}
  43.  
  44. {:write_user}
  45.   {WOPE %userdir%%userno.MHS}
  46.   {WRIT %login_name}
  47.   {WRIT %password}
  48.   {WRIT %al}
  49.   {WRIT %protocol}
  50.   {WRIT %expert}
  51.   {WRIT %a}
  52.   {WRIT %fa}
  53.   {WCLO}
  54.   {RETURN}
  55.  
  56. {:chg_password}
  57.   {SEND ^J^M}
  58. {:NU10}  {PUSH}
  59.   {SEND ^J^M%an4%Choose a password.  You will need it each time you log-on.^J^M}
  60. {:NU1}  {SEND %an0%Password: }
  61. {:NU7}  {CALL cd}
  62.   {GETS password,15,NU7}
  63.   {LENG %password}  {COMP %_len,4}  {IFCO-GE NU3}
  64.   {SEND ^J^M%an1%Invalid password.  %an0%Must be at least 4 characters long.^J^M}
  65.   {GOTO NU1}
  66. {:NU3}  {POPS}
  67. {:NU8}  {RETURN}
  68.  
  69. {:get_protocol}
  70.   {PUSH}
  71.   {SEND ^J^M}
  72. {:GP2}  {COMP expert,ON}  {IFCO GP1}
  73.   {CALL CLS}
  74.   {SEND ^J^M^J^J^J%an1}
  75.   {SEND ^J^M             ┌───────────────────────────────────────────────────┐}
  76.   {SEND ^J^M             │ %an0▒▒▒▒▒▒▒▒▒▒▒▒ %an7%File Transfer Protocols %an0▒▒▒▒▒▒▒▒▒▒▒▒ %an1│}
  77.   {SEND ^J^M             └───────────────────────────────────────────────────┘}
  78.   {SEND ^J^M                                 [%an0%Z%an1] Zmodem}
  79.   {SEND ^J^M                                 [%an0%Y%an1] Ymodem}
  80.   {SEND ^J^M                                 [%an0%X%an1] Xmodem csum}
  81.   {SEND ^J^M                                 [%an0%K%an1] Xmodem-1k^J^M}
  82.  
  83.   {SEND ^J^M%an0%(When in doubt, choose Z ...}
  84.   {SEND ^J^MYou can always change it later, if needed.)^J^M^J}
  85. {:GP1}  {SEND ^M%an1%Protocol:%an0  ^H}
  86.   {SETG 120,time_out}
  87. {:GP3}  {GETS-H ch,1,GP3}
  88.   {SETV dline,xkyz}  {INST dline,%ch}  {IFCO ,GP1}
  89.   {SETV protocol,%ch}
  90.   {COMP new,1}  {IFCO GP4}
  91.   {POPS}
  92.   {RETURN}
  93. {:GP4}  {MACL MACROBBS.MAC,NU11}
  94.  
  95. {:update_clist}
  96.   {ROPE %datadir%CALLERS.LST,UC1}
  97.   {WOPE %datadir%TEMP.000}
  98. {:UC2}  {READ ch}  {READ cline}  {READ dline}
  99.   {COMP ch,%userno}  {IFCO UC3}
  100.   {WRIT %ch}  {WRIT %cline}  {WRIT %dline}  {GOTO UC2}
  101. {:UC3}  {COMP s,1}  {IFCO UC5}
  102. {:UC4}  {WRIT %ch}
  103.   {WRIT %login_name}
  104.   {WRIT %password}
  105. {:UC5}  {READ dline}  {WRIT %dline}  {GOTO UC5}
  106. {:UC1}  {WCLO}
  107.   {EXEC-N COPY %datadir%TEMP.000 %datadir%CALLERS.LST}
  108.   {EXEC-N DEL %datadir%TEMP.000}
  109.   {RETURN}
  110.  
  111. {:screen_full}
  112.   {SEND More? (Y,n) : }
  113.   {SETG 120,SF3}
  114. {:SF1}  {GETS-H ch,1,SF2}
  115.   {COMP ch,y}   {IFCO SF4}
  116.   {COMP ch,n}   {IFCO SF4}
  117.   {SEND ^H}  {GOTO SF1}
  118. {:SF2}  {SETV ch,y}  {GOTO SF4}
  119. {:SF3}  {SETV ch,n}
  120. {:SF4}  {SEND ^M                  ^M}
  121.   {RETURN}
  122.  
  123. {:cd}
  124.   {IFCA cd1}
  125.   {COMP on,1}  {IFCO time_out}
  126. {:cd1}  {RETURN}
  127.  
  128. {:expert_tog}
  129.   {COMP expert,ON}
  130.   {IFCO ET1}
  131.   {SETV expert,ON}
  132.   {GOTO ET2}
  133. {:ET1}  {SETV expert,OFF}
  134. {:ET2}  {RETURN}
  135.  
  136. /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
  137. /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
  138. /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
  139. /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
  140. /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
  141.  
  142. {:start}
  143.   {SETE time_out}
  144.   {CALL cls}
  145.   {SEND ^J^M%an3                           System Information Request%an0^J^M}
  146.   {SEND ^J^M All information you provide here is strictly for the records.
  147.   {SEND ^J^M Please answer honestly.^J^M}
  148.   {WOPE %userdir%%userno.DAT}
  149.   {ROPE %datadir%PERSONAL.DAT,E3}
  150.   {SETV count,0}
  151.   {SETG 120,close}
  152. {:E1}   {SEND ^J^M}
  153.   {READ ch}  {READ dline}  {INCR count}
  154.   {SEND %an7%%count.%an0 %dline: %an7}
  155. {:E2}  {GETS dline,%ch,E2}
  156.   {WRIT %dline}
  157.   {GOTO E1}
  158. {:E3}  {WCLO}
  159.   {SETV mcount,%count}
  160.   {SETV dline}  {SETV ch}  {SETV count}
  161.  
  162. {:ST1}  {SEND ^J^M%an4%Change anything? %an0(y,n) : }
  163.   {SETG 120,time_out}
  164. {:ST2}  {GETS ch,1,ST2}
  165.   {COMP ch,n}  {IFCO N1}
  166.   {COMP ch,y}  {IFCO M1}
  167.   {SEND ^H}  {GOTO ST2}
  168.  
  169. {:D0}  {CALL cls}
  170.   {SETV mcount,0}
  171. {:D1}  {SEND ^J^M}
  172.   {SETV count,0}
  173.   {INCR mcount}
  174.   {ROPE %datadir%PERSONAL.DAT,M0}
  175. {:D2}   {INCR count}  {READ dline}  {READ dline}
  176.   {COMP count,%mcount}  {IFCO ,D2}
  177.   {SEND %an7%%mcount. }
  178. {:D6}   {RCLO}  {SEND %an0%%dline: }  {SETV count,0}
  179.   {ROPE %userdir%%userno.DAT,M1}
  180. {:D3}   {INCR count}  {READ dline}
  181.   {COMP count,%mcount}  {IFCO ,D3}
  182.   {RCLO}  {SEND %an7%%dline}
  183.   {GOTO D1}
  184.  
  185. {:M0}  {DECR mcount}
  186. {:M1}  {SEND ^J^M%an5%Change which? %an0(1 - %mcount, L=List, ENTER=quit) : }
  187. {:M7}  {GETS ch,2,ST1}
  188.   {COMP ch,l}  {IFCO D0}
  189.   {COMP ch,1}  {IFCO-L M8}
  190.   {COMP ch,%mcount}  {IFCO-G M8,M9}
  191. {:M8}  {SEND ^H}  {GOTO M7}
  192. {:M9}  {SETV count,0}
  193.   {ROPE %datadir%PERSONAL.DAT}
  194. {:M2}   {INCR count}   {READ temp}   {READ dline}
  195.   {COMP count,%ch}  {IFCO ,M2}
  196.   {RCLO}
  197.   {SEND ^J^M^J^M%an3%%dline: %an7}
  198.   {SETG 120,time_out}
  199.   {GETS dline,%temp,M1}
  200.   {SEND ^J^M%an7%Updating . . .}
  201.   {ROPE %userdir%%userno.DAT,M5}
  202.   {WOPE %datadir%TEMP.000}
  203.   {SETV count,0}
  204. {:M3}   {INCR count}  {READ temp}
  205.   {COMP count,%ch}  {IFCO M4}
  206.   {WRIT %temp}  {GOTO M3}
  207. {:M4}  {WRIT %dline}
  208. {:M10}  {READ dline}  {WRIT %dline}  {GOTO M10}
  209. {:M5}  {WCLO}
  210.   {EXEC-N COPY %datadir%TEMP.000 %userdir%%userno.DAT}
  211.   {SEND ^J^M}
  212.   {GOTO M1}
  213.  
  214. {:user_info}
  215.   {SETE time_out}
  216.   {SETV pass,%password}  {SETV prot,%protocol}
  217.   {PUSH}
  218. {:UI1}  {CALL cls}
  219.   {SEND ^J^M^J}
  220.   {SEND      Name/Handle:  %an3%%login_name^J^M^J}
  221.   {SEND %an7%1. %an0  Password...: %an7%%password^J^M}
  222.   {SEND %an7%2. %an0  Protocol...: %an7%%protocol^J^M}
  223.   {SEND %an7%3. %an0  Expert Mode: %an7%%expert^J^M^J}
  224.   {SEND %an7%S. %an0  Save changes^J^M}
  225.   {SEND %an7%Q. %an0  Quit to MAIN MENU^J^M^J}
  226.   {SEND %an3%Change Data  %an0%%_tim^J^M%an7%CD Command: %an0}
  227.   {SETG 120,time_out}
  228. {:UI6}  {GETS-H ch,1,UI6}
  229.   {COMP ch,*}  {IFCO time_out}
  230.   {COMP ch,s}  {IFCO UI2}
  231.   {COMP ch,q}  {IFCO UI5}
  232.   {COMP ch,1}  {IFCO chg_password}
  233.   {COMP ch,2}  {IFCO get_protocol}
  234.   {COMP ch,3}  {IFCO expert_tog}
  235.   {SEND ^H}  {GOTO UI6}
  236. {:UI2}  {SEND ^J^M^J%an1%Saving...}
  237.   {CALL write_user}
  238.   {COMP pass,%password}  {IFCO UI3}
  239.   {CALL update_clist}
  240. {:UI3}  {SETV ch}  {SETV lname}  {SETV pass}  {SETV prot}
  241.   {GOTO N2}
  242. {:UI5}  {SETV password,%pass}  {SETV protocol,%prot}
  243.   {GOTO UI3}
  244.  
  245. {:intro_msg]
  246.   {SETE time_out}
  247.   {IFEX %datadir%INTROMSG.MSG,,IM3}
  248.   {SEND ^J^M^J%an7%Current%an1 INTROMSG%an0:^J^M^J}
  249.   {ROPE %datadir%INTROMSG.MSG,IM3}
  250. {:IM9}  {READ dline}  {SEND ^M%dline^J^M}  {GOTO IM9}
  251. {:IM3}  {SEND ^J^M%an4%Change it?  %an0(y,%an7%N%an0%) : }
  252.   {SETG 120,time_out}
  253.   {CALL cd}
  254. {:IM5}  {GETS-H ch,1,IM4}
  255.   {COMP ch,y}  {IFCO IM0}
  256.   {COMP ch,n}  {IFCO IM4}
  257.   {SEND ^H}  {GOTO IM5}
  258. {:IM0}  {WOPE %datadir%INTROMSG.MSG}  {WRIT %login_name #%userno}  {WCLO}
  259.   {WOPE-A %datadir%LOG-1.LOG}   {WRIT %_tim : Altered INTROMSG}  {WCLO}
  260.   {SEND ^J^M^J%an1%INTROMSG     %an0%Five lines max - %an7/s%an0 to save^J^M}
  261.   {SETV count,0}
  262. {:IM1}  {INCR count}
  263.   {COMP count,6}  {IFCO-E IM2}
  264.   {SEND ^J^M%an7%%count> %an0%}
  265.   {SETG 120,time_out}
  266.   {CALL cd}
  267.   {GETS dline,79}
  268.   {COMP dline,/s}  {IFCO IM2}
  269.   {WOPE-A %datadir%INTROMSG.MSG}  {WRIT %dline}  {WCLO}
  270.   {GOTO IM1}
  271. {:IM2}  {SEND ^J^M%an1%Saving...}
  272.   {ROPE %datadir%INTROMSG.MSG,IM8}
  273.   {WOPE-A %datadir%LOG-1.LOG}
  274. {:IM7}  {READ dline}  {WRIT   %dline}  {GOTO IM7}
  275. {:IM8}  {WCLO}
  276. {:IM4}  {SETV dline}  {SETV count}
  277.   {GOTO N2}
  278.  
  279.  
  280. {:N1}  {SETV count}  {SETV mcount}  {SETV dline}  {SETV temp}
  281.   {MACL MACROBBS.MAC,BB21}
  282.  
  283. {:N2}  {MACL MACROBBS.MAC,main_menu}
  284.  
  285.